1. Technical Field
This disclosure generally relates to streaming applications, and more specifically relates to the testing and routing of data tuples in a streaming application.
2. Background Art
Streaming applications are known in the art, and typically include multiple operators coupled together in a flow graph that process streaming data in near real-time. An operator typically takes in streaming data in the form of data tuples, operates on the data tuples in some fashion, and outputs the processed data tuples to the next operator. Streaming applications are becoming more common due to the high performance that can be achieved from near real-time processing of streaming data.
Some streaming applications need to test all data tuples using one or more test operators, and route the data tuples to different operators based on the results of the test operators. When many tests need to be performed, serializing the tests results in longer latency in processing the data tuples. Placing the tests in parallel can improve performance, but still results in running all data tuples through all tests.